package main

import "fmt"

func main() {
   t1()
   fmt.Println("===================t1=======================")
   t2()
   fmt.Println("===================t2=======================")
   t3()
   fmt.Println("===================t3=======================")
}

func t1(){
   var n [10]int /* n 是一个长度为 10 的数组 */
   var i,j int

   /* 为数组 n 初始化元素 */         
   for i = 0; i < 10; i++ {
      n[i] = i + 100 /* 设置元素为 i + 100 */
   }

   /* 输出每个数组元素的值 */
   for j = 0; j < 10; j++ {
      fmt.Printf("Element[%d] = %d\n", j, n[j] )
   }
}

func t2(){
   /* 数组 - 5 行 2 列*/
   var a = [][]int{ {0,0}, {1,2}, {2,4}, {3,6},{4,8}}
   var i, j int

   /* 输出数组元素 */
   for  i = 0; i < len(a); i++ {
      for j = 0; j < len(a[i]); j++ {
         fmt.Printf("a[%d][%d] = %d\n", i,j, a[i][j] )
      }
   }
}

func t3(){
   /* 数组长度为 5 */
   balance := []int {1000, 2, 3, 17, 50}
   /* 数组作为参数传递给函数 */
   avg := getAverage( balance, 5 ) 

   /* 输出返回的平均值 */
   fmt.Printf( "平均值为: %f ", avg )
   fmt.Println()
}

func getAverage(arr []int, size int) float32 {
   var i,sum int
   var avg float32  

   for i = 0; i < size;i++ {
      sum += arr[i]
   }

   avg = float32(sum / size)

   return avg;
}